#ifndef MATERIALMENUBUTTON_H
#define MATERIALMENUBUTTON_H

#include <QLabel>

class QMenu;
class cceMaterialMenuButton : public QLabel
{
  Q_OBJECT
public:
  enum Action
  {
    Action_Clear,
    Action_UpdateGraphicsSystem,
    Action_Save,
    Action_SaveAll,
    Action_Export,
    Action_Hide,
    Action_COUNT
  };

private:
  bool    _active;
  QMenu   *_menu;

  QAction *_actions[Action_COUNT];


protected:
  void mousePressEvent(QMouseEvent *ev);
  void mouseReleaseEvent(QMouseEvent *ev);

public:
  cceMaterialMenuButton(QWidget *parent = 0);

  QAction* GetAction (Action action);

public slots:
  
signals:

  void Save ();
  void SaveAll ();
  void Export ();
  void Clear ();
  void UpdateGraphicsSystem();
  void Hide ();
  
  
};

#endif // MATERIALMENUBUTTON_H
